package com.dims_hsrc.audit.service;

import java.util.Map;
import org.springframework.web.multipart.MultipartFile;

/**
 * 合同区块链Service接口
 * 
 * @author Claude
 */
public interface IContractBlockchainService 
{
    /**
     * 上传合同到区块链
     * 
     * @param contractNo 合同编号
     * @return 上链结果，包含交易哈希等信息
     */
    public Map<String, Object> uploadContractToChain(String contractNo);
    
    /**
     * 获取合同在区块链上的状态
     * 
     * @param contractNo 合同编号
     * @return 链上状态信息
     */
    public Map<String, Object> getContractChainStatus(String contractNo);
    
    /**
     * 验证合同数据与区块链上的数据一致性
     * 
     * @param contractNo 合同编号
     * @return 验证结果
     */
    public Map<String, Object> verifyContractOnChain(String contractNo);
    
    /**
     * 验证上传的文件与区块链上的数据一致性
     * 
     * @param contractNo 合同编号
     * @param file 上传的文件
     * @return 验证结果
     */
    public Map<String, Object> verifyUploadedFile(String contractNo, MultipartFile file);
} 